home *** CD-ROM | disk | FTP | other *** search
-
- bzip2-1.0 should compile without problems on the vast majority of
- platforms. Using the supplied Makefile, I've built and tested it
- myself for x86-linux, sparc-solaris, alpha-linux, x86-cygwin32 and
- alpha-tru64unix. With makefile.msc, Visual C++ 6.0 and nmake, you can
- build a native Win32 version too. Large file support seems to work
- correctly on at least alpha-tru64unix and x86-cygwin32 (on Windows
- 2000).
-
- When I say "large file" I mean a file of size 2,147,483,648 (2^31)
- bytes or above. Many older OSs can't handle files above this size,
- but many newer ones can. Large files are pretty huge -- most files
- you'll encounter are not Large Files.
-
- Earlier versions of bzip2 (0.1, 0.9.0, 0.9.5) compiled on a wide
- variety of platforms without difficulty, and I hope this version will
- continue in that tradition. However, in order to support large files,
- I've had to include the define -D_FILE_OFFSET_BITS=64 in the Makefile.
- This can cause problems.
-
- The technique of adding -D_FILE_OFFSET_BITS=64 to get large file
- support is, as far as I know, the Recommended Way to get correct large
- file support. For more details, see the Large File Support
- Specification, published by the Large File Summit, at
- http://www.sas.com/standard/large.file/
-
- As a general comment, if you get compilation errors which you think
- are related to large file support, try removing the above define from
- the Makefile, ie, delete the line
- BIGFILES=-D_FILE_OFFSET_BITS=64
- from the Makefile, and do 'make clean ; make'. This will give you a
- version of bzip2 without large file support, which, for most
- applications, is probably not a problem.
-
- Alternatively, try some of the platform-specific hints listed below.
-
- You can use the spewG.c program to generate huge files to test bzip2's
- large file support, if you are feeling paranoid. Be aware though that
- any compilation problems which affect bzip2 will also affect spewG.c,
- alas.
-
-
- Known problems as of 1.0pre8:
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
- * HP/UX 10.20 and 11.00, using gcc (2.7.2.3 and 2.95.2): A large
- number of warnings appear, including the following:
-
- /usr/include/sys/resource.h: In function `getrlimit':
- /usr/include/sys/resource.h:168:
- warning: implicit declaration of function `__getrlimit64'
- /usr/include/sys/resource.h: In function `setrlimit':
- /usr/include/sys/resource.h:170:
- warning: implicit declaration of function `__setrlimit64'
-
- This would appear to be a problem with large file support, header
- files and gcc. gcc may or may not give up at this point. If it
- fails, you might be able to improve matters by adding
- -D__STDC_EXT__=1
- to the BIGFILES variable in the Makefile (ie, change its definition
- to
- BIGFILES=-D_FILE_OFFSET_BITS=64 -D__STDC_EXT__=1
-
- Even if gcc does produce a binary which appears to work (ie passes
- its self-tests), you might want to test it to see if it works properly
- on large files.
-
-
- * HP/UX 10.20 and 11.00, using HP's cc compiler.
-
- No specific problems for this combination, except that you'll need to
- specify the -Ae flag, and zap the gcc-specific stuff
- -Wall -Winline -O2 -fomit-frame-pointer -fno-strength-reduce.
- You should retain -D_FILE_OFFSET_BITS=64 in order to get large
- file support -- which is reported to work ok for this HP/UX + cc
- combination.
-
-
- That's the end of the currently known compilation problems.
-
-